#ifndef CAR_H_
# define CAR_H_

# include <stdlib.h>

/**
** @typedef struct car s_car
** @brief This structure defines a car.
** @param x is the position on x abscisse
** @param y is the position on y abscisse
** @param v is the velocity
** @param d the direction of the match
** @param crash the know if the car is crashed
** @param cycle the number of cycle to the finish line
*/
typedef struct  car
{
    int         x;
    int         y;
    int         v;
    int         d;
    int         crash;
    int         cycle;
}               s_car;

/**
** @fn int init(s_car **car)
** @return int
** @brief This function init parameters of s_car.
*/
s_car     *init(void);

/**
** @fn void acceleration(s_car **c);
** @return void
** @brief This function accelerate car.
*/
void    acceleration(s_car **c);

/**
** @fn void    braking(s_car **c);
** @return void
** @brief This function braking car.
*/
void    braking(s_car **c);

/**
** @fn void    deceleration(s_car **c)
** @return void
** @brief This function decelerate car
*/
void    deceleration(s_car **c);

/**
** @fn void    turning_left(s_car **c);
** @return void
** @brief This function turn left car.
*/
void    turning_left(s_car **c);

/**
** @fn void    turning_right(s_car **c);
** @return void
** @brief This function turn right car.
*/
void    turning_right(s_car **c);

/**
** @fn void    movement(s_car **c);
** @return void
** @brief This function give position of car.
*/
void    movement(s_car **c);


#endif /* !CAR_H_ */
